//index.js
//获取应用实例
var app = getApp();
var appData = app.globalData;
Page({
    data: {
        user_id: '', // 当前用户ID
        group_id: '', // 圈子ID
        master_id: '', // 圈主ID
    },
    onLoad: function (options) {
        var _this = this
        // 获取参数
        let master_id = ''
        let group_id = ''
        // 判断是否有圈主参数
        if (options.master_id) {
            master_id = options.master_id
            group_id = options.group_id
        } else if (options.scene) {
            var scene = decodeURIComponent(options.scene)
            let sceneArr = scene.split(',')
            master_id = sceneArr[0] // 圈主ID
            group_id = sceneArr[1] // 圈子ID
        }

        let user_id = wx.getStorageSync('user_id') // 当前用户ID
        _this.setData({
            user_id: user_id,
            group_id: group_id,
            master_id: master_id
        })
    },
    // 用户点击授权
    start: function (res) {
        console.log('进入圈子')
        let _this = this
        let user_id = wx.getStorageSync('user_id')
        let account = wx.getStorageSync('account')
        console.log(res)
        if (res.detail.errMsg == 'getUserInfo:ok') {
            console.log('用户同意授权')
            // 更新用户信息
            _this.updateUserInfo()
        } else if (res.detail.errMsg == 'getUserInfo:fail auth deny') { // 当用户点击拒绝时
            wx.showModal({
                title: '提示',
                content: '需要授权才能一起玩耍哟',
                showCancel: false,
                success: function (res) {
                    if (res.confirm) {
                        console.log('用户点击确定')
                    }
                }
            })
        }
    },
    // 更新用户信息
    updateUserInfo: function () {
        let _this = this
        let account = wx.getStorageSync('account')
        // 已经授权，可以直接调用 getUserInfo 获取头像昵称，不会弹框
        wx.getUserInfo({
            success: res => {
                console.log('拉取获取用户微信信息')
                // 可以将 res 发送给后台解码出 unionId
                console.log(res.userInfo)
                let userInfo = res.userInfo
                // 由于 getUserInfo 是网络请求，可能会在 Page.onLoad 之后才返回
                // 所以此处加入 callback 以防止这种情况
                if (_this.userInfoReadyCallback) {
                    _this.userInfoReadyCallback(res)
                }
                // 更新用户信息
                wx.request({
                    url: appData.apiUrl + 'user/regist',
                    data: {
                        openid: account,
                        name: userInfo.nickName,
                        picture: userInfo.avatarUrl
                    },
                    success: function (res) {
                        console.log('更新用户信息')
                        console.log(res)
                        // 进入圈子
                        wx.navigateTo({
                            url: '/pages/lingGroup/lingGroup?master_id=' + _this.data.master_id + '&group_id=' + _this.data.group_id,
                        })
                    }
                })
            }
        })
    },
})
